.table {
    min-width: 100%;
    min-height: 100%;
    background-color: #fff;
    text-align: left;
    padding: 5mm;

    &:not(:first-of-type) {
        margin-top: 30px;
    }

    .table-head {
        .table-title {
            text-align: center;
            font-weight: bold;
        }

        .date {
            width: 100%;
            display: flex;
            border: 1px solid #000;
            margin-bottom: 2mm;

            .date-item {
                width: calc(100% / 31);
                flex: 1 1 auto;
                text-align: center;
                min-width: 10mm;
                align-items: center;
                justify-content: center;
                display: flex;

                &:not(:first-of-type) {
                    border-left: 1px solid #000;
                }
            }
        }
    }
}

@media print {
    .table {
        padding: 0;
        margin: 0;
        transform-origin: left top;

        &:not(:first-of-type) {
            page-break-before: always;
        }

        .table-head {
            .tabel-description {
                font-size: 4mm;
            }
        }

        &.more {
            width: 310mm;
        }

        &.less {
            width: 300mm;
        }
    }
}